'''
需求：
    传参格式由headers控制，不做处理
    请求参数 和 headers 一般字典格式的，需要提前判断和转化，也要请求参数是列表格式的
    get请求 有headers或者没有
    post 请求 无数据  有headers或者没有

'''
import json
import requests

def request_(url, method, data, headers):
    data=format_data(data)
    headers=format_data(headers,'h')
    if data==0 or headers==0:
        return {'参数错误'}
    if data==None:
        data=data
    else:
        data=json.dumps(data)
    result = requests.request(url=url, method=method, data=data, headers=headers)
    return result

def format_data(data,d_or_h='d'):
    def r(data):
        if d_or_h=='d':
            return type(data) not in (dict, list)
        else:
            return type(data) !=dict
    if data == None or data == '' or data == {}:
        data = None
        return data
    else:
        if isinstance(data, str):
            data = eval(data)
            if r(data):
                return 0
            return data
        elif r(data):
            return 0
        else:
            return data

